Computer networks and the devices and services that reside on them are often the subject of attacks by parties that are attempting to improperly access information and resources or to introduce malicious code to the networks. Exploit code is frequently injected into processes running on platforms for which the exploit code was not designed. Operating system and platform dependencies are introduced either intentionally (to improve targeting or avoid detection), by necessity (to take advantage of platform-specific features or vulnerabilities), or accidentally. Attackers do not always have the ability or inclination to prevent exploit code from attempting to run on platforms where it will be nonfunctional.